閱讀前,建議可以參考Day1:閱讀指南&為何選擇這個題目?
題目:計算機概論X30天
挑戰內容:連續30天紀錄計算機概論、離散數學、演算法、資料結構等課程,還有自己學習程式的心得體悟。
閱讀指南:
電腦的底層世界是10101010101
其實我覺得沒什麼用XD。
它可以算是電腦科學的常識吧,但除非要處理很底層的東西,不然不知道怎麼轉換好像也不會怎樣。我初次遇到時,也沒有學會(太笨+覺得「知道這個要幹嘛?」)。純粹是因為課程需求,所以才不得已要知道一下。但如果目地只是寫程式,不學也沒關係。
人生很短,不需要學無用的東西折磨自己
但對我有用,1.因為考試會考,2.還有我可以用來拖時間(XD
什麼是「十進位轉二進位」,簡單來說就是把12、21這種數字只用「0和1表達」
網路上有除法,但我比較笨不會用,我的方法如下
2^0=1
2^1=10
2^2=100
2^3=1000
會發現,2的「次方」如果是n,就代表代表1後面有n幾個零
。比如說:
1是「2的0次方」,所以代表1後面有0個零,所以是1
2的「2的1次方」,所以代表1後面有1個零,所以是10
4的「2的2次方」,所以代表1後面有2個零,所以是100
8的「2的3次方」,所以代表1後面有3個零,所以是1000
然後就把十進位的數字,拆成各種2的次方
比如說,14就拆成8(2^3)+4(2^2)+2(2^1)
8=(2^3)=1後面3個零=1000
4=(2^2)=1後面2個零=100
2=(2^1)=1後面1個零=10
因此8+4+2=1000+100+10=1110
所以14換成二進位就是1110
順序就是:
各種類型
2次方的總和什麼是「二進位轉十進位」,簡單來說就是把一堆10100101的鬼東西,轉換成常見的12、20之類的數字。
我的方式如下
比如說看到1010001,首先就猜一下這個數字大概是多少,因為很接近1000000,因此大概可以猜是一個比2^6大~2^7也小(因為1後面有6個零,所以就是2^6),也就是64~128之間。
然後如果真的逼我算出來,就把它拆開。
1010001=1000000+10000+1
1000000=2^6 ==> 64
10000=2^4 ==>16
1=2^0 ==>1
64+16+1=81
因此1010001就是81
順序就是: